#pragma once

#include <string>
#include "base_noncopyable.h"

namespace El {
namespace Record {

class RecordDiagnosis {
    DISALLOW_COPY_AND_MOVE(RecordDiagnosis);

public:
    static RecordDiagnosis &GetInstance();

    bool Start();
    void Record(const std::string &args);
    void Snap(const std::string &args);
    void Search(const std::string &args);

private:
    RecordDiagnosis() = default;
    ~RecordDiagnosis() = default;
};

} // namespace Record
} // namespace El